package br.gov.mi.corporativo.dominio.boundary.comum.pessoasistema;

import java.util.List;

import javax.inject.Inject;
import javax.jws.WebService;

import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;

import br.gov.mi.corporativo.dominio.boundary.comum.pessoasistema.PessoaSistemaEndPoint;
import br.gov.mi.corporativo.dominio.entidade.comum.PessoaSistema;
import br.gov.mi.corporativo.dominio.repositorio.comum.PessoaSistemaRepositorio;
import br.gov.mi.infraestrutura.crud.CrudServicoImpl;


@Component
@Transactional(readOnly=true)
@WebService(endpointInterface = "br.gov.mi.corporativo.dominio.boundary.comum.pessoasistema.PessoaSistemaEndPoint")
public class PessoaSistemaServico extends CrudServicoImpl<PessoaSistema, Long, PessoaSistemaRepositorio>  implements PessoaSistemaEndPoint{
	
	@Inject
    public void setRepository(PessoaSistemaRepositorio repositorio) {
        super.setRepositorio(repositorio);
    }

	@Override
	public PessoaSistema recuperarPorIdPessoaSistema(Long idPessoaSistema) {
		return repositorio.findByIdPessoaSistema(idPessoaSistema);
	}

	@Override
	public List<PessoaSistema> recuperarPorSistema(Long sistema) {
		return repositorio.findBySistema(sistema);
	}

	@Override
	public List<PessoaSistema> recuperarPorPessoa(Long pessoa) {
		return repositorio.findByPessoa(pessoa);
	}

	@Override
	public List<PessoaSistema> recuperarPorStRegistro(String stRegistro) {
		return repositorio.findByStRegistro(stRegistro);
	}
	
	

}
